#include "types.h"

double* solveCuda(double* u0, Area area, double epsilon, TwoDimFunc f);
double f_host(double x, double y);
double* HostCreate_F(double a, double b, double h, int n);

double ErrorCheck(double* dev_u_cur, double* dev_u_prev, int n, double* hostErrorBlock, double* cudaErrorBlock);
void HostAlgoritmIterate(double* dev_u_cur, double* dev_u_prev, double* dev_f, double h, int n);
double HostErrorCheck(double* dev_u_cur, double* dev_u_prev, int n, double* hostErrorBlock, double* cudaErrorCheck);
double* solveCuda(double* u0, Area area, double epsilon, TwoDimFunc f);
double* CudaCreate_F(double a, double b, double h, int n);
